import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import path from "path";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  server: {
    port: 9002,
  },
  build: {
    lib: {
      entry: path.resolve(__dirname, "src/lib/main.ts"),
      name: "activity-components",
      fileName: (format) => `h5-activity-components.${format}.js`,
    },
    rollupOptions: {
      // 确保外部化处理那些你不想打包进库的依赖
      external: ["vue", "h5-activity-components"],
      output: {
        // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
        globals: {
          vue: "Vue",
        },
      },
    },
  },
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "src"),
    },
  },
  css: {
    preprocessorOptions: {
      scss: {
        additionalData:
          '@use "sass:math"; @import "./src/styles/variables.scss";', // 添加公共样式
      },
    },
  },
});
